﻿
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Common.RunModels.ES
{
    public class ElasticsearchLogModelBase
    { 
        public string id { get; set; }
         
        public string apiKey { get; set; }

        public string serviceCode { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public string cT { get; set; }
    }

    public class ElasticsearchCapErrorLogModel : ElasticsearchLogModelBase
    {
        /// <summary>
        /// Publish =0,
        /// Subscribe=1
        /// </summary>
        public int capType { get; set; }

        public string capId { get; set; }

        public string name { get; set; }

        public string groupName { get; set; }

        public string message { get; set; }

        public string msgObj { get; set; }
    }

    public class ElasticsearchOrderPageResultModelBase<T>
    {

    }

    public class ElasticsearchDownExtLogModel : ElasticsearchLogModelBase
    {
        public string api { get; set; }

        public decimal exeSecond { get; set; }

        public string msg { get; set; }

        public string title { get; set; }

        public string paramObj { get; set; }

        public string resultObj { get; set; }
    }

    public class ElasticsearchSyncLogModel : ElasticsearchLogModelBase
    {
        public string syncId { get; set; }

        public string syncCode { get; set; }

        public string syncName { get; set; }

        public string api { get; set; }

        public decimal exeSecond { get; set; }

        public string msg { get; set; }

        public int count { get; set; }

        public int addC { get; set; }

        public int updateC { get; set; }

        public int delC { get; set; }
    }

    public class ElasticsearchSysLogModel : ElasticsearchLogModelBase
    {
        /// <summary>
        /// Error,Infomation,Warning
        /// </summary>
        public string type { get; set; }

        public string msg { get; set; }

        public string logKey { get; set; }

        public string paramObj { get; set; }

        /// <summary>
        /// 自定义信息
        /// </summary>
        public string logMsg { get; set; }

        /// <summary>
        /// 自定义参数
        /// </summary>
        public string logMsgParamObj { get; set; }

        public string msgTrace { get; set; }

        public long cTTick { get; set; }

        public long costTick { get; set; }
    }
}
